home *** CD-ROM | disk | FTP | other *** search
/ PC Gamer (Italian) 30 / PC Gamer IT CD 30 1-2.iso / MOTS / GAMEDATA / RESOURCE / JKMRES.GOO / cog_pow_energy_m.cog < prev    next >
Text File  |  1998-02-25  |  2KB  |  96 lines

  1. # Jedi Knight MOTHS Cog Script
  2. #
  3. # POW_ENERGY.COG
  4. #
  5. # POWERUP Script - Energy
  6. #
  7. # [YB, CYW, SRS]
  8. #
  9. # 01/09/98 [YB] Switched to powerup fast mode for multiplayer
  10. #
  11. # (C) 1997 LucasArts Entertainment Co. All Rights Reserved
  12.  
  13.  
  14. symbols
  15.  
  16. thing       powerup                          local
  17. thing       player                           local
  18.  
  19. int         bin=11                           local
  20. sound       pickupsnd=nrgpu1.wav             local
  21. sound       respawnsnd=Activate01.wav        local
  22. flex        amount                           local
  23.  
  24. int         bin_contents=0                   local
  25. int         autoselect_weapon=-1             local
  26. int         oldFlags                         local
  27.  
  28. message     touched
  29. message     taken
  30. message     respawn
  31. message     timer
  32.  
  33. end
  34.  
  35. # ========================================================================================
  36.  
  37. code
  38.  
  39. touched:
  40.    player = GetSourceRef();
  41.    amount = GetInv(player, bin);
  42.  
  43.    if (amount < GetInvMax(player, bin))
  44.    {
  45.       TakeItem(GetSenderRef(), -1);
  46.       call taken;
  47.    }
  48.  
  49.    Return;
  50.  
  51. # ........................................................................................
  52.  
  53. taken:
  54.    powerup = GetSenderRef();
  55.    player = GetSourceRef();
  56.  
  57.    // Print("Energy Cells");
  58.    jkPrintUNIString(player, bin);
  59.  
  60.    // Do effects.
  61.    PlaySoundLocal(pickupsnd, 1, 0, 0);
  62.    AddDynamicTint(player, 0.0, 0.0, 0.2);
  63.  
  64.    // store the old bin contents
  65.    bin_contents = GetInv(player, bin);
  66.  
  67.    // Increment powerup amount.
  68.    ChangeInv(player, bin, 20.0);
  69.  
  70.    // Check for Auto Reload
  71.    if(GetAutoReload() & 1)
  72.    {
  73.       if(!bin_contents)
  74.       {
  75.          if(!((GetAutoReload() & 2) && (GetWeaponBin(GetCurWeapon(player)) == jkGetMultiParam(1))))
  76.          {
  77.             // Try to autoselect and see if the best weapon is an energy cell weapon
  78.             autoselect_weapon = AutoSelectWeapon(player, 2);
  79.             if((autoselect_weapon == 2) || (autoselect_weapon == 3))
  80.                SelectWeapon(player, autoselect_weapon);
  81.          }
  82.       }
  83.    }
  84.  
  85.    return;
  86.  
  87. # ........................................................................................
  88.  
  89. respawn:
  90.    PlaySoundThingLocal(respawnsnd, GetSenderRef(), 0.6, 5.0, 10.0, 0);
  91.    return;
  92.  
  93. end
  94.  
  95.  
  96.